<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<style>
    .box {
        width: 500px;
        height: 400px;
        border: 1px solid #000;
        position: relative;
        margin: auto;
        overflow: hidden;
        cursor: pointer;
    }

    .box ul,
    .box ol {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .box ul li {
        width: 500px;
        height: 400px;
        display: none;
    }

    .box ul li img {
        width: 500px;
        height: 400px;
    }

    .box ol {
        width: 120px;
        position: absolute;
        left: 50%;
        margin-left: -40px;
        bottom: 20px;
        height: 20px;
        background: #fff;
        display: flex;
        justify-content: space-evenly;
        padding: 10px 0;
        border-radius: 20px;
    }

    .box ol li {
        width: 20px;
        height: 20px;
        border-radius: 50%;
        background: #f00;
        border: 1px solid #999;
    }

    .box ol li.current {
        background: #00f;
    }

    .box ul li.current {
        display: block;
    }

    .box .left,
    .box .right {
        position: absolute;
        top: 50%;
        width: 30px;
        height: 30px;
        margin-top: -15px;
        background: #ccc;
        text-align: center;
        line-height: 30px;
        text-decoration: none;
        font-weight: bold;
        color: #fff;
    }

    .left {
        left: 0;
    }

    .right {
        right: 0;
    }
</style>

<body>
    <div class="box">
        <ul>
            <li class="current"><img src="../../../../img/menghuan.jpg" alt=""></li>
            <li><img src="../../../../img/照片/12.jpg" alt=""></li>
            <li><img src="../../../../img/menghuan.jpg" alt=""></li>
            <li>
                <img src="../../../../img/weimei.jpg" alt="">
            </li>
        </ul>
        <ol>
            <li class="current"></li>
            <li></li>
            <li></li>
            <li></li>
        </ol>
        <a href="javascript:;" class="left">&lt;</a>
        <a href="javascript:;" class="right">&gt;</a>
    </div>
</body>
<script type="text/javascript">
    /*
        实现功能
        1、自动切换图片 保证小圆点跟随
        2、上一张下一张点击切换图片  小圆点也需要跟随
        3、点击小圆点 切换到对应的图片
    */
    //1、获取到相关的元素
    var ulLiDoms = document.querySelectorAll('ul>li');
    var olLiDoms = document.querySelectorAll('ol>li');
    // 表示目前显示的图片序号
    var index = 0;
    // 保存定时器标识
    var timer;
    //2、实现自动切换图片
    autoPlay();

    function autoPlay() {
        timer = setInterval(function () {
            index++;
            // 如果到了最后一张图片 重置为第一张图片
            index == 4 && (index = 0)
            play();
        }, 2000);
    }

    function play() {
        // 设置图片的显示
        document.querySelector('ul>.current').removeAttribute('class');
        ulLiDoms[index].className = 'current';
        // 设置小圆点的跟随
        olLiDoms.forEach(function (item) {
            item.className = '';
        })
        olLiDoms[index].className = 'current';
    }
    // 鼠标划入停止定时器
    document.querySelector('.box').onmouseover = function () {
        clearInterval(timer);
    }
    // 鼠标划出
    document.querySelector('.box').onmouseout = function () {
        autoPlay();
    }
    // 下一张图片点击
    document.querySelector('.right').onclick = function () {
        index++;
        // 如果到了最后一张图片 重置为第一张图片
        index == 4 && (index = 0)
        play();
    }
    // 上一张图片点击
    document.querySelector('.left').onclick = function () {
        index--;
        index == -1 && (index = 3);
        play();
    }
    // 小圆点的点击事件
    olLiDoms.forEach(function (dom, i) {
        dom.onclick = function () {
            //因为是forEach i变量 就是每一个小圆点的序号
            index = i;

            play();
        }
    })

</script>

</html>